Method of transmitting packets of data in a telecommunication network and system implementing that method

ABSTRACT

There is disclosed a method of transmitting data packets in a telecommunication network made up of nodes for dynamically routing successive packets sent by a sender to a receiver so that the packets may be routed along different routes and using a protocol such that a receiver receiving a request transmits a response to the sender of the request. At one or more nodes of the network the response is routed dynamically to the sender and a supplemental packet is generated that is sent to the sender of the request and whose route is predetermined.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on French Patent Application No. 04 50 509filed Dec. 3, 2004, the disclosure of which is hereby incorporated byreference thereto in its entirety, and the priority of which is herebyclaimed under 35 U.S.C. §119.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to a method of transmitting packets of data in atelecommunication network and to a system for implementing that method,in particular for analyzing the network in the event of a malfunction.

2. Description of the Prior Art

In a telecommunication network such as the Internet, information can besent from a sender to a receiver in the form of packets, a packet beinga group of data having a format defined by the communication protocol ofthe network and provided with a header in which the addresses of thesender and receiver of the packet are indicated.

The packet is transmitted in the network via different nodes of thenetwork, a node being an element able to read the address of thereceiver of a packet to forward the packet to a subsequent node so that,by repeating these forwarding operations from node to node, the packetis transmitted from the sender to the receiver along an optimum route inthe network in terms of distance, time and congestion, for example.

Consequently, the nodes of a network are called routers. In the case ofthe Internet, when a first router receives a packet intended for anaddress coded in accordance with the Internet Protocol (IP), that routerconsults internal routing tables associating groups of IP addresses ofreceivers with one or more IP addresses of second routers to which thisfirst router can forward this packet.

Accordingly, as a function of its routing tables, the first routertransmits the received packet to a second router, this routing modebeing referred to hereinafter as the dynamic routing mode.

In other words, the route for routing packets between the nodes of thenetwork is not predetermined because the routers are configured to routethe packets optimally as a function of the network traffic, for example.In this case, the second server selected by a first server for thetransmission of a packet varies as a function of the network trafficconditions.

Moreover, a packet of data may be lost if a first node directs thatpacket to a second node when the connection between these nodes isinterrupted or when the first node has a configuration error in itsrouting table, as a result of which the pocket of data is nottransmitted or is forwarded to a non-existent node.

If this kind of malfunction occurs, it is necessary to warn the senderof the packet that it has not reached its receiver.

To this end, it is known in the art to use a method referred tohereinafter as the “ping” method that consists in sending a packet withno particular content to a receiver so that, on receiving this packet,the latter returns an acknowledgement or response to the sender.

In the case of the Internet, the ping method consists in sending from asender A to a receiver B a packet comprising a request that is calledthe ECHO_REQUEST message when it is sent and is defined by the InternetControl Message Protocol (ICMP).

When the receiver B receives the request, it sends a response called theECHO_REPLY message to the sender A, interchanging the addresses of thesender and receiver in the header of the packet sent, compared to theECHO_REQUEST message, this method checking for correct operation of thesystem at the point B.

The present invention stems from the observation that, if a connectionbetween two routers is broken, a packet may be lost when the response istransmitted, in which case it is not possible for the sender of therequest to be advised of the origin of the incident.

In fact, the sender of the response is the receiver of the request, andso the error message arising from the loss of this response is deliveredto the receiver of the request and not to its sender.

This situation is depicted in FIG. 1, which represents a network 100that consists of routers 103, 104 and 105 and in which communication isbased on the Internet Protocol (IP). Each router forms the interfacebetween two subnetworks with its own address in each of thosesubnetworks and terminals 101 and 102 each having a unique IP address.

A request 110 is sent from the terminal 101 to the terminal 102 via therouters 103, 104 and 105. To this end, these routers 103, 104 and 105use their respective routing tables 113, 114 and 115 and the address10.0.0.99 of the sender and the address 10.0.3.99 of the receiver of therequest 110.

Accordingly, this request 110 is sent to the first router 103 with theaddresses 10.0.0.1 and 10.0.1.1, its routing table 113 telling it thatmessages sent to the addresses 10.0.3.x, where x is an integer from 0 to255, must be routed to the router with the address 10.0.1.2, i.e. therouter 104.

An operation of reading routing tables of this kind is then repeated inthe routers 104 and 105 in succession, with the result that the request110 reaches the terminal 102 of the network with the address 10.0.3.99.

After receiving the request 110, the terminal 102 sends a response 111giving its own address 10.0.3.99 as the sender address and the address10.0.0.99 of the terminal 101 as the receiver address.

However, the routing table of the router 104 has a configuration erroron the route of the response 111. In fact, its routing table does notspecify how messages with addresses 10.0.0.x are to be routed, and theresponse 111 is therefore lost.

In this case, the server 105 sends an error message 117, but it sends itto the sender of the response 111, i.e. to the receiver 102 of therequest.

Thus the sender of the request (terminal 101) is not able to identifythe network malfunction.

The present invention aims to solve this problem by using a method suchthat, if the network malfunctions during the transmission of a responseto a request, the sender of the request is informed of the malfunction.

SUMMARY OF THE INVENTION

Thus the invention concerns a method of transmitting data packets in atelecommunication network made up of nodes for dynamically routingsuccessive packets sent by a sender to a receiver so that the packetsmay be routed along different routes and using a protocol such that areceiver receiving a request transmits a response to the sender of therequest, in which method, at one or more nodes of the network, theresponse is routed dynamically to the sender and a supplemental packetis generated that is to be sent to the sender of the request and whoseroute is predetermined.

This kind of method uses supplemental packets that take a route separatefrom the route determined dynamically, these packets informing thesender of the request of the elements of the network that arefunctioning correctly.

It should be noted that, because of the multiplication of messages sentcorrectly (2n+1 messages are sent for a route comprising n nodes), thismethod is particularly useful for analyzing a network during amalfunction, i.e. on a one-off basis, in order to limit the data trafficthat it generates.

In one embodiment, the predetermined route comprises at least one nodeon the route of the request.

In one embodiment, the predetermined route is the converse of the routeof the request

In one embodiment, the supplemental packet comprises a body identical tothe body of the response.

In one embodiment, the node is a router using dynamic routing tables toforward a packet as a function of parameters such as the transmissiondelay and the network traffic.

In one embodiment, the network is the Internet.

In one embodiment, the route of the request is recorded as the requestpasses through the nodes of the network.

The invention also concerns a server for transmitting data packets in atelecommunication network made up of nodes for dynamically routingsuccessive packets sent by a sender to a receiver so that the packetsmay be routed along different routes and using a protocol such that areceiver receiving a request transmits a response to the sender of therequest, which server comprises means whereby said response is routeddynamically to said sender and means whereby a supplemental packet isgenerated that is to be sent to the sender of said request and whoseroute is predetermined.

In one embodiment the packet transmission server comprises means wherebythe predetermined route comprises at least one node on the route of therequest.

In one embodiment, the packet transmission server comprises meanswhereby the predetermined route is the converse of the route of therequest.

In one embodiment, the packet transmission server comprises meanswhereby the supplemental packet comprises a body identical to the bodyof the response.

In one embodiment, the packet transmission server is a router node usingdynamic routing tables to forward a packet as a function of parameterssuch as the transmission delay or the network traffic.

In one embodiment, the packet transmission server is the Internet.

In one embodiment, the packet transmission server comprises meanswhereby the route of the request is recorded as the request passesthrough the nodes of the network.

Other features and advantages of the invention will become apparent fromthe description given hereinafter by way of non-limiting example andwith reference to the appended drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1, already described, represents the known functioning of a packettelecommunication network.

FIG. 2 represents a packet routing method of the invention.

FIG. 3 represents a routing table of a node of the invention.

FIG. 4 represents the functioning in accordance with the invention of apacket telecommunication network.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

In the preferred embodiment of the invention described hereinafter,communications within the network use the Internet Protocol (IP) and thenodes comprise routers as defined above.

Also, this embodiment uses two IP options known in the art, namely theRecord Route (RR) and Source Routing (SR) options defined in the Requestfor Comments (RFC) 791 issued by the Defense Advanced Research ProjectsAgency (DARPA) in September 1981.

When the RR option is active, the addresses of the various routersthrough which a data packet passes are recorded in the body of thatpacket as it travels along its route; the SR option is used to imposethe route that the packet must take by indicating the addresses of thesuccessive routers to be visited.

Moreover, when sending a data packet from a sender A to a receiver B(FIG. 2), the Record Route option is activated so that, when the node Bsends a response, it sends, in addition to the prior art response, whoseroute is determined dynamically, a supplemental packet using the SRfunction, i.e. comprising the modified list of the addresses of thevarious routers recorded as the request traveled along its route.

In this example, that list is obtained by modifying the list ofaddresses recorded in the body of the request by deleting the lastaddress from that list, i.e. the address of the node B.

This supplemental packet reaches the last node of the network visited bythe request and, at that node, repeats the procedure effected at thelevel of the receiver B, i.e. sends a response that is routeddynamically to the node A and a supplemental packet whose route isimposed and consists of the route that is the converse of that taken bythe request.

To this end, the same protocol is used as before with the SR option,entering as a parameter the modified list of the routers on the route ofthe request obtained by modifying the list recorded by the request bydeleting the last address from the list.

FIG. 2 represents one embodiment of the invention.

Thus a request 205 is sent from the node A 201 to the node B 202 via thepacket telecommunication network 220. This request is routed normallyover its route to the node 202 in the course of which it visits thenodes 203 and 204.

On arriving at the node 202, the Record Route function has recorded inthe body of the request a list 301 of the addresses of the variousrouters visited along the route of the message (FIG. 3).

The final entries in this list are therefore the successive addresses ofthe nodes 203, 204 and 202.

In response to the request 204, the node 202 sends a response 206 thatis routed dynamically and a packet 207 with the SR option activated,with the list 302 as a parameter, that list 302 consisting of the list301 of the request with the last item, i.e. the address of the node B,removed. The SR option sends the message 207 to the last address fromthe list 302, i.e. to the node 204.

Once the node 204 has received this message 207, the procedure isrepeated. Accordingly, the node 201 is sent a response 208 that isdynamically routed, in the same way as a ping response to a request sentto the node 204. An additional message 209 is sent to the last addressof the list 303 derived from the list 302, and so on until the forciblyrouted additional message reaches the node 201.

FIG. 4 illustrates the application of the invention to the particularsituation of FIG. 1 already described. In this case, the request 201routed from the terminal 101 to the terminal 102 via the routers 103,104 and 105 uses the Record Route option to record the addresses of thevarious routers.

Accordingly, when the terminal 102 sends a dynamically routed response202, as in FIG. 1, that terminal 102 also sends in parallel asupplemental message 203 that is forcibly routed to the router 105,which is the last router on the route of the request 201, whose addresshas been stored in the latter.

Having received this message 203, the router 105 in turn executes themethod of the invention by sending a response 207 to the terminal 101and a message 204 to the router 104. According to the routing tables,the response 207 will cause an error at the router 104. The processtherefore continues for as long as a forcibly routed message has notreached the terminal 101.

Unlike the situation shown in FIG. 1, in which the terminal 1 has notreceived any usable information, when the above process has finished,the terminal 101 has received at least two messages, namely the message206 forcibly routed from the router 103 and the response 209 dynamicallyrouted from the same router.

These messages therefore indicate that the configuration error that ledto the loss of the response 202 is not in the router 103, whichrestricts the search for the error to the routers 104 and 105.

1. A method of transmitting data packets in a telecommunication networkmade up of nodes for dynamically routing successive packets sent by asender to a receiver so that said packets may be routed along differentroutes and using a protocol such that a receiver receiving a requesttransmits a response to the sender of said request, in which method, atone or more nodes of the network, said response is routed dynamically tosaid sender and a supplemental packet is generated that is to be sent tothe sender of said request and whose route is predetermined.
 2. Thepacket transmission method claimed in claim 1, wherein saidpredetermined route comprises at least one node on the route of saidrequest.
 3. The packet transmission method claimed in claim 2, whereinsaid predetermined route corresponds to the converse of the route of therequest.
 4. The packet transmission method claimed in claim 1, whereinsaid supplemental packet comprises a body identical to the body of saidresponse.
 5. The packet transmission method claimed in claim 1, whereinsaid node is a router using dynamic routing tables to forward a packetas a function of parameters such as the transmission delay or thenetwork traffic.
 6. The packet transmission method claimed in claim 1,wherein said network is the Internet.
 7. The packet transmission methodclaimed in claim 1, wherein the route of the request is recorded as itpasses through nodes of the network.
 8. A server for transmitting datapackets in a telecommunication network made up of nodes for dynamicallyrouting successive packets sent by a sender to a receiver so that saidpackets may be routed along different routes and using a protocol suchthat a receiver receiving a request transmits a response to the senderof said request, which server comprises means whereby said response isrouted dynamically to said sender and means whereby a supplementalpacket is generated that is to be sent to the sender of said request andwhose route is predetermined.
 9. The server claimed in claim 8,comprising means whereby said predetermined route comprises at least onenode on the route of said request.
 10. The server claimed in claim 9,comprising means whereby said predetermined route corresponds-to theconverse of the route of the request.
 11. The server claimed in claim 8,comprising means whereby said supplemental packet comprises a bodyidentical to the body of said response.
 12. The server claimed in claim8, wherein said node is a router using dynamic routing tables to forwarda packet as a function of parameters such as the transmission delay orthe network traffic.
 13. The server claimed in claim 8, wherein saidnetwork is the Internet.
 14. The server claimed in claim 8, comprisingmeans whereby the route of the request is recorded as it passes throughnodes of the network.